#1、添加

#append()函数末尾添加
books = ["三国演义","西游记"]

#append()函数末尾添加
print(len(books))#2
print(books)#['三国演义', '西游记']
print(id(books))#s1
books.append("水浒传")
print(len(books))#3
print(books)#['三国演义', '西游记', '水浒传']
print(id(books))#s2

#insert()指定位置添加
books.insert(1,"红楼梦")
print(len(books))#4
print(books)#['三国演义', '红楼梦', '西游记', '水浒传']
print(id(books))#s3

#extend()末尾多加几个
books.extend([1,2,3])
print(len(books))#7
print(books)#['三国演义', '红楼梦', '西游记', '水浒传', 1, 2, 3]
print(id(books))#s4

#'+'运算符添加
books = books + [4]
print(len(books))#8
print(books)#['三国演义', '红楼梦', '西游记', '水浒传', 1, 2, 3, 4]
print(id(books))#s5

books = books*2
print(len(books))#16
print(books)#['三国演义', '红楼梦', '西游记', '水浒传', 1, 2, 3, 4, '三国演义', '红楼梦', '西游记', '水浒传', 1, 2, 3, 4]
print(id(books))#s6

books = books + [4]
print(id(books))#s7

books = books*2
print(id(books))#s8

books = books + [4]
print(id(books))#s9

books = books*2
print(id(books))#s10

#通过观察，我们得知，"+"运算符操作与"*"运算符操作会改变原列表地址，就是创建一个新列表，不是在原来的列表上操作
#所以打印出来的地址会变化，但为什么后面地址会出现重复甚至与一开始的地址相同
#因为python对小列表的内存管理可能复用已经释放的地址，就是原来的地址储存的数据被清除，然后重新使用这个地址




#del()删除指定位置，pop()删除尾部，remove()删除指定元素
#过
#修改就是list[n] = "巴拉巴拉"





